從Linux端取得MQTT資料分封傳送
首先,為了要使用 Serial Library 和 MQTT 這兩個 library,在設備上要安裝 pyserial 和 paho-mqtt 這兩個套件,我們連線進 7688 Duo 下以下兩個指令:你可以使用 PuTTy 連線 mylinkit.local 這個位址,連線成功之後,操作安裝指令。
pip install pyserial paho-mqtt
接下來,將 lass-pm25-friend.py 這隻程式放到 7688 Duo 上,Windows上可以用SCP這套軟體來傳輸。
在Linux-like系統上直接在Terminal 終端機程式:
scp lass-pm25-friend.py [email protected]:/root/
阿海將這隻程式修改,讓收到訂閱的MQTT Message程式部分,再加幾行代碼,使收到的資料「原封不動」,只加分行符號「’\n’」轉送下去。也許有人會疑惑,為什麼要這樣設計呢?
明明都已經正確的解析出資料了,卻不傳送已經解析過的資料,是的,這是因為:Arduino 上有許多板子可以直接支援MQTT的(訂閱/傳送),為了未來移植到其他版子方便,阿海就將字串解析的工作交給 MCU 了。
(詳細的程式碼請見 Github 上的原始碼會比較清楚)